Analysis of India’s BC Data

Introduction

Motivation: Indoor Air Exposure

  • Black Carbon, PM2.5 and CO are major pollutant from indoor emissions
  • Prime Source of indoor emission is Cooking - using Solid Biomass Fuel (SBF)
  • SBF use is common in LMICs like India, particularly the rural households (80% population)
  • Cooking Emission can be as high as 20 times of the background concentration
  • Factors that effect the exposure to indoor pollutants
    • Fuel usage in cooking
    • Type of cooking setup (oven type and kitchen type)
    • Household ventilation
    • Food choices and cooking time
  • Primary emission reduction can be achieved by adopting clean fuels such as LPG
  • However, affordability and fuel-stacking remains a big challenge
  • Community and Household level actionable measures can be a solution to reduce exposure
  • Very limited BC monitoring data from rural communities

Black Carbon - Measurement Challanges

  • BC is component of combustion derived particulate matter (PM)
  • BC is a strong absorber of solar radiation, with 20 year GWP of 4470
  • BC has also been identified as a toxic pollutant - can impact human organ growth
  • Monitoring BC is a big challenge
    • No particular chemical definition
    • BC/EC/Soot measurement techniques
      • Aethalometer: Real-time Light absorption measurement at 880nm
        • Real-time analysis
        • Correction schemes have been thoroughly studied and developed
        • Multi-wavelength light absorption data facilitates Source Apportionment of BC.
        • Artifacts: Scattering by particles, Loading effects on filter
      • EC-OC Analyzer: Thermal-optical technique
        • Semi real-time analysis on sampled aerosol filter
        • OC quantification
      • Photo-Acoustic Measurement: Optical characterization
        • Suspended aerosol particle
        • Free from loading effect
        • Measures aerosol light scattering
      • Single Particle Soot Photometer (SP2): Laser Induced Incandescence
        • High accuracy, sensitivity (in Femtograms) and rich dataset
        • Size range: 200-1500 nm
        • particle sizing capability
    • However,
      • SP2, PAAS, EC-OC can be very expensive - not adoptable in certain situations
      • May not be suitable for field deployment with limited logistics (e.g. rural setup)
      • Aethalometers are widely used for regulatory grade BC measurement, ease of use.
      • Latest micro-Aethalometer can be a solution in field deployment

Source Apportionment from Aethalometer Data

  • Aethalometer Measurement Process:
    • light attenuation -> absorption coefficient \(b_{abs}\) -> apply correction -> BC mass concentration
    • Source of uncertainty:
      • Loading correction scheme utilized
      • Fixed scattering correction
      • Use of fixed Mass Absorption Cross Section (MAC)
  • Source Apportionment Process:
    • Majorly based on Absorption Angstrom Exponent (AAE): a quantity to measure the spectral dependence of light absorption by aerosols. \[ b_{abs} = k \times \lambda^{-\alpha} \]
    • From a multi-wavelength aethelomater \(\alpha\) can be derived from log-linear regression fit between \(b_{abs}\) and \(\lambda\) (wavelength)
Sample AAE Estimation

Sample AAE Estimation

  • Sandradewi 2008 -> Aethalometer Model
    • Two component based apportionment : Fossil Fuel (FF) and Biomass Burning (BB) \[ b_{abs}(\lambda) = b_{abs,FF}(\lambda) + b_{abs,BB}(\lambda) \]
    • Uses fixed \(\alpha\) values for FF (\(\alpha_{FF}\)) and BB (\(\alpha_{BB}\)) to segregate the light absorption component

Equations

Source Apportionment Equations

Source Apportionment Equations

This Study

Campaign Photos

Pollution Monitoring in Indian VillagesPollution Monitoring in Indian Villages

Pollution Monitoring in Indian Villages

  • Rural Household emissions were characterized
  • RAMP (non-calibrated PM2.5 and CO) and MA300 devices were used
  • MA300
    • Micro-aethalometer: light weight and portable.
    • 5 wavelength measurement: 370, 470, 528, 625, 880
    • Sampling Flow Rate: 150 mL/min
    • Data Collection Frequency: 5 min
  • 3 X MA300 were deployed in two villages for indoor and outdoor monitoring.
  • Participant Survey conducted for fuel usage, cooking practices
  • Participant’s Building structures were mapped

Moniroting Station

Location Details

Location AQ_Type Lat Long
Vill_1 RAMP 26.5318 80.38050
Vill_2 RAMP 26.5251 80.41490
KNP CPCB 26.4499 80.33190
LKO_Sch CPCB 26.7785 80.93130
LKO_Ind CPCB 26.8332 80.89660
Hamirpur IGPCARE 25.8154 79.91875

Stations in Map (Not included)

Household and Village Details

  • We considered one household from each village.
  • These two households were set up for indoor monitoring in addition to outdoor monitoring in the village center.

Building Structure

Household StructureHousehold Structure

Household Structure

Survey Results

Parameter Village1_HH Village2_HH
Population A2C0 A5C2
Prim CookFuel Dung Cake Dunc Cake
Sec CookFuel Kerosene/Firewood Diesel
Kitchen Type Indoor Outdoor Enclosed Kitchen
LPG Conn Yes Yes
No. Meals 2 2

AQ Data

Several data sets were utilized in this study.

  1. Rural Monitoring
  • Temporal Frequency: 5 min
  • Bhawani Kheda (Village 1) and Naikani Kheda (Village 2)
  • Household Indoor Air Quality
  • Village Outdoor Air Quality
  • Pollutants: (Raw data considered)
    • RAMP: PM2.5, CO, Temperature (T), Relative Humidity (RH)
    • MA300: BC, BCbb (biomass burning component), BCff (fossil fuel component), AAE (Angstrom Exponent), pctBB (BCbb percentage of total BC)
  1. Regulatory Monitoring
  • LKO_Sch: CPCB monitoring station in Lucknow Central School
    • Pollutants: PM2.5, CO, Temperature (AT), Relative Humidity (RH), NO, NOx, Ozone
    • Temporal Frequency: 15 min
    • Distance from Rural Monitoring: 59 km
  • LKO_Ind: CPCB monitoring station in Talkatora Industrial Belt
    • Pollutants: PM2.5, CO, Temperature (AT), Relative Humidity (RH), NO, NOx, NO2, SO2
    • Temporal Frequency: 15 min
    • Distance from Rural Monitoring: 59 km
  • KNP: CPCB monitoring station in Kanpur Neheru Nagar
    • Pollutants: PM2.5, Temperature (AT), Relative Humidity (RH), NO, NOx, Ozone
    • Temporal Frequency: 1 hour
    • Distance from Rural Monitoring: 12 km
  • IGPCARE: Long term monitoring station in a rural site in a nearby district
    • Data not available publicly
    • Pollutants: BC, BrC (Brown Carbon), O3, PM2.5
    • Rural regulatory monitoring site
    • operated by University of Gothenburg (Dr. Ravi Kant Pathak)
    • Distance from Present Rural Monitoring: 93 km
    • Note: Useful for comparing trends in rural BC pollution (MA300 vs AE)
    • Related Publication: https://pubs.rsc.org/en/content/articlehtml/2022/ea/d1ea00083g
  • Number of data points measured in Village
House n positive negative
Village1_Outdoor 2021 100 0
Village1_Indoor 1934 100 0
Village2_Outdoor 3753 100 0
Village2_Indoor 3223 100 0

Pollutant Summary Statisics

Here I am focusing on the combustion generated pollutants, i.e. PM2.5, BC and CO. The mean concentration and coefficient of variation (standard deviation/mean) have been calculated and presented for indoor and outdoor in village 1 and 2.
House meanPM2.5 covPM2.5 meanBC covBC meanCO covCO
Village1_Outdoor 61.37 0.50 16.45 0.52 823.16 0.44
Village1_Indoor 64.20 0.44 16.32 0.41 1229.07 1.25
Village2_Outdoor 59.75 0.51 14.80 0.51 965.15 0.37
Village2_Indoor 63.43 0.71 14.12 0.51 1690.40 1.10
## # A tibble: 12 × 5
##    House            variable     n   mean      sd
##    <fct>            <fct>    <dbl>  <dbl>   <dbl>
##  1 Village1_Outdoor BC        2021   16.4    8.59
##  2 Village1_Indoor  BC        1934   16.3    6.71
##  3 Village2_Outdoor BC        3753   14.8    7.58
##  4 Village2_Indoor  BC        3223   14.1    7.23
##  5 Village1_Outdoor PM2.5     2021   61.4   30.8 
##  6 Village1_Indoor  PM2.5     1428   64.2   28.2 
##  7 Village2_Outdoor PM2.5     3139   59.8   30.6 
##  8 Village2_Indoor  PM2.5     2036   63.4   44.9 
##  9 Village1_Outdoor CO        2021  823.   360.  
## 10 Village1_Indoor  CO        1428 1229.  1531.  
## 11 Village2_Outdoor CO        3139  965.   354.  
## 12 Village2_Indoor  CO        2036 1690.  1863.

Note: PM2.5 and BC are in \(\mu g/m^3\); CO in ppb

  • Summary stat does not reflect difference - proposed Hypothesis generating:

  • Range and variability in household - ventilation

  • BC is local not PM2.5 - we are more confident

Analysis of BC concentration

Making a new data set for analysis

HH_4 = HH_3 %>% 
  separate(House, into = c("Village","Position"), sep = "_", remove = FALSE) %>%
  select(House,Village, Position, date, dDate, hour, PM2.5, BC, BCbb, BCff, AAE_Blue_IR, DayType, DayPart, activity)

Days of Sampling

HH_4 %>% group_by(Village,activity) %>% 
  summarise(n = n_distinct(dDate))
## `summarise()` has grouped output by 'Village'. You can override using the
## `.groups` argument.
## # A tibble: 6 × 3
## # Groups:   Village [2]
##   Village  activity     n
##   <chr>    <fct>    <int>
## 1 Village1 MrngCook    16
## 2 Village1 EvngCook    17
## 3 Village1 NoCook      21
## 4 Village2 MrngCook    20
## 5 Village2 EvngCook    21
## 6 Village2 NoCook      26

Indoor to Indoor Correlation

Indoor to Outdoor Correlation

Outdoor to Outdoor Correlations

All correaltion

hourlyBC = HH_4 %>% select(House, hour, activity, BC) %>% 
  group_by(hour, House, activity)%>% 
  summarise(meanBC = mean(BC, na.rm=TRUE)) %>% 
  pivot_wider(names_from = "House", values_from = "meanBC")
## `summarise()` has grouped output by 'hour', 'House'. You can override using the
## `.groups` argument.
my_cols <- c("#00AFBB", "#E7B800", "#FC4E07")  
pairs(hourlyBC[,3:6], pch = 19,  cex = 0.5,
      col = my_cols[hourlyBC$activity],
      lower.panel=NULL)

pairs.panels(hourlyBC[,3:6],
             method = "pearson", # correlation method
             hist.col = "#00AFBB",
             density = TRUE,  # show density plots
             ellipses = TRUE # show correlation ellipses
              )

HH_4 %>% group_by(Village, Position, hour) %>%
  select(hour, Village, Position, BC, activity) %>% 
  mutate(row = row_number()) %>% 
  pivot_wider(names_from = "Position", values_from = "BC") %>% 
  mutate(IO_BC = Indoor/Outdoor) %>% 
  group_by(hour, Village, activity) %>% 
  summarise(meanIO = mean(IO_BC, na.rm=TRUE)) %>% 
  ggplot(.,aes(x = hour, y = meanIO, group = Village, color = Village))+
  geom_point()
## `summarise()` has grouped output by 'hour', 'Village'. You can override using
## the `.groups` argument.

HH_4 %>% group_by(Village, Position, hour) %>% 
  get_summary_stats(c(BC,BCbb, BCff), type = "mean_sd") %>% 
  ggplot(.,aes(x = hour, y = mean, fill= variable))+
  geom_area()+
  facet_grid(Village~Position)

HH_4 %>% group_by(Village, Position, hour) %>% 
  get_summary_stats(c(BC,BCbb, BCff, PM2.5), type = "mean_sd") %>% 
  mutate(row = row_number()) %>% 
  pivot_wider(names_from = "Position", values_from = c("mean","sd"))%>% 
  ggplot(.,aes(x = hour, y = mean_Indoor, group = Village, color = Village))+
  geom_point()+
  facet_wrap(~variable, ncol = 1, scales = "free_y")
## Warning: Removed 192 rows containing missing values (`geom_point()`).

Statistical Analysis

Concentration During Cooking Period

HH_4 %>% 
  timeVariation(.,pollutant = "BC", group = "Position")

HH_3 %>% 
  group_by(House) %>% 
  summarise(minBC = min(BC),
            maxBC = max(BC),
            avgBC = mean(BC),
            sdBC = sd(BC))
## # A tibble: 4 × 5
##   House            minBC maxBC avgBC  sdBC
##   <fct>            <dbl> <dbl> <dbl> <dbl>
## 1 Village1_Outdoor 0.824  38.2  16.4  8.59
## 2 Village1_Indoor  5.44   38.2  16.3  6.71
## 3 Village2_Outdoor 0.801  38.2  14.8  7.58
## 4 Village2_Indoor  3.58   38.2  14.1  7.23
HH_3 %>% 
  ggplot(.,aes(x = BC))+
  geom_density()+
  facet_grid(House~activity)

HH_3 %>% 
  ggplot(.,aes(x = date, y = BC))+
  geom_point()

HH_3 %>% 
  filter(BC<1) %>% 
  ggplot(.,aes(x = BC))+
  geom_histogram()+
  facet_grid(House~DayPart)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

HH_3 %>% filter(BC>0.2) %>% 
  ggplot(.,aes(y = House, x = BC))+
  geom_boxplot()+
  facet_grid(~activity)

HH_3 %>% filter(BC>0.3) %>% 
  group_by(House) %>% 
  summarise(n = n(), 
            day = n_distinct(dDate))
## # A tibble: 4 × 3
##   House                n   day
##   <fct>            <int> <int>
## 1 Village1_Outdoor  2021    11
## 2 Village1_Indoor   1934    12
## 3 Village2_Outdoor  3753    18
## 4 Village2_Indoor   3223    20
HH_3 %>% filter(BC<0.4) %>% 
  ggplot(.,aes(x = date, y = T))+
  geom_point()

HH_3 %>% filter(BC>0.4) %>% 
  select(hour, activity, House, BC) %>% 
  mutate(row = row_number()) %>% 
  separate(House, into = c("Village","Position"), sep = "_") %>%
  pivot_wider(names_from = "Position", values_from = "BC") %>% 
  group_by(Village, hour, activity) %>% 
  summarise(meanIN = mean(Indoor, na.rm=TRUE),
            meanOUT = mean(Outdoor, na.rm=TRUE)) %>% 
  ggplot(.,aes(x = meanIN, y = meanOUT, group = Village, color = activity))+
  geom_point()+
  facet_grid(~Village)
## `summarise()` has grouped output by 'Village', 'hour'. You can override using
## the `.groups` argument.

BC Concentration Timeline

Notes: * Challenges identified for in-situ measurement as BC concentration can go high * Data Filtered: - Bad data points: instrument choked due to severe concentration levels - IQR Criteria utilized for Outlier removal (1.5 times Q1 and Q3) * Concurrent measurements were limited

Diurnal Concentration Profile of BC

Notes: * 5 min BC -> Hourly average * Effect of emission - Cooking source during morning and evening period enhanced pollutant concentration - Post cooking decay of pollutant * Effect of Atmosphere - PBL height reduced BC concentration

BC concentration by activity period

activity meanBC meanBCbb meanBCff pctChBC pctChBCbb pctChBCff
MrngCook 18.04 16.99 1.05 35.44 35.44 35.44
EvngCook 20.51 19.31 1.20 53.97 53.97 53.97

Notes: * percentage change in all BC components are same!

BC Apportionment Results

## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Notes: * BB distribution remains almost similar centering 94.16%

## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Notes: * No visible change in BB/FF separation during parts of day

AAE

Notes: * Negative AAE values observed

Indoor - Outdoor

## `summarise()` has grouped output by 'activity'. You can override using the
## `.groups` argument.
activity AAE_Indoor AAE_Outdoor AAE_pctCh BC_pctCh BCbb_pctCh
MrngCook 1.67 1.52 10.19 9.95 9.95
EvngCook 1.64 1.54 6.30 9.93 9.93
NoCook 1.43 1.41 1.51 -6.20 -6.20

Notes: * BC concentration during morning cooking increased by 12% (highest observed) * During NoCook period BC concentration lowered by 4.6% than the outdoor -> infiltration process * AAE increased by 10.34% during Morning Cooking session -> Use of SBF can be confirmed * Percentage change in BCbb was not dominant - issue with SA fraction.

BC concentration by Location~Activity

BC concentration by DayPart~Activity

## Source Apportionment Results

BCbb by Location~Activity

### BCff by DayPart~Activity

HH_3 %>% ggplot(.,aes(x = DayPart, y = BCff, fill = House))+
  geom_boxplot(position=position_dodge(0.8))+
  theme_pubr()

Other Pollutants

Diurnal Variation

Diurnal PM2.5

Diurnal CO

Diurnal BC

Reference measurement vs RAMP data

Spatial Data

Map of Population Density

Map of Simulated BC by Verma 2022